HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
Let's Encrypt
Let's Encrypt是2016年4月12日成立的一家证书授权中心,提供免费的传输层安全(TLS)X.509证书,通过自动化的过程消除目前安全网站证书需要手工创建,加密,签名,安装以及更新的复杂性。
获取 let's encrypt
git clone https://github.com/certbot/certbot.git
安装ssl证书
./certbot-auto certonly --standalone -d example.com --email example@email.com
# certbot-auto renew 重新安装之前存在的ssl证书
配置nginx
server {
listen 443 ssl;
ssl on;
ssl_certificate /etc/letsencrypt/live/example.com/cert.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
#双向 ssl 认证
# ssl_verify_client on;
# ssl_client_certificate /etc/letsencrypt/live/example.com/cert.pem;
}